package com.wsoft.cms.vo.anno;

import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * @Author z001
 * @Date 2024/11/27 16:04
 */
@Data
public class AnnouncementInfoVO {
    @Schema(description = "id")
    private Long id;

    @Schema(description = "分类id")
    private Long categoryId;

    @Schema(description = "公告类型名称")
    private String categoryName;

    @Schema(description = "标题")
    private String title;

    @Schema(description = "内容")
    private String msgContent;

    @Schema(description = "开始时间")
    private LocalDateTime startTime;

    @Schema(description = "结束时间")
    private LocalDateTime endTime;

    @Schema(description = "优先级（L低，M中，H高）")
    private String priority;

    @Schema(description = "通告对象类型（ALL:全体用户,ORG:指定组织,POST:指定岗位,LEVEL：指定职务级别，MEMBER:指定用户）")
    private String msgType;

    @Schema(description = "指定对象")
    private String msgIds;

    @Schema(description = "发布状态（0未发布，1已发布，2已撤销）")
    private String sendStatus;

    @Schema(description = "发布单位")
    private Long sendOrgId;

    @Schema(description = "发布单位名称")
    private String sendOrgName;

    @Schema(description = "发布人")
    private Long sendMemberId;

    @Schema(description = "发布人姓名")
    private String sendMemberName;

    @Schema(description = "流程key")
    @TableField("business_code")
    private String businessCode;

    @Schema(description = "发布时间")
    private LocalDateTime sendTime;

    @Schema(description = "摘要")
    private String annoAbstract;

    @Schema(description = "关键字")
    private String keyword;

    @Schema(description = "是否置顶")
    private Integer isTop;

    @Schema(description = "置顶时间")
    private LocalDateTime topTime;

    @Schema(description = "是否消息提醒")
    private Integer isWarm;

    @Schema(description = "是否开启评论")
    private Integer isComment;

    @Schema(description = "是否需要报名")
    private Integer isSign;

    @Schema(description = "设备端")
    private String device;
}
